//SICASM.H
#ifndef SICASM
#define SICASM 1

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>

#define MAXSYM 25
#define TRUE 1
#define FALSE 0

class SYMTAB {
 private:
 struct{
   char symbol[9];
   int addr;
   } symfield[MAXSYM];
 int lastentry;
 public:
  SYMTAB(void);
  int search(char *operand);
  void insert(char *label,int locctr);
};

extern char label[9],opcode[7],operand[9];
extern int startaddr,proglen;
extern int error,linecount;

extern struct INTFIELD {
 int addr;
 char label[9];
 char opcode[7];
 char operand[9];
} intrec;

extern void pass1(FILE *);
extern void pass2(void);
extern void readline(FILE *);
extern int opcodesearch(char *opcode);

#endif